﻿// <copyright file="PathFinderNodeType.cs" company="Gustavo Franco">
// Copyright (c) 2006 All Right Reserved
// </copyright>
// <author>Gustavo Franco</author>
// <email>gustavo_franco@hotmail.com</email>
// <date>2006</date>
// <summary>Types of pathfinder node.</summary>

// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
// PURPOSE. IT CAN BE DISTRIBUTED FREE OF CHARGE AS LONG AS THIS HEADER
// REMAINS UNCHANGED.

// Email:  gustavo_franco@hotmail.com

// Copyright (C) 2006 Franco, Gustavo

// Work done by Robert Tenney on this library: PathFinder, is based off of the previous work
// done by: Franco, Gustavo.

using System;

namespace TenneySoftware.Engine.Algorithms.Pathfinder {
    /// <summary>
    /// Types of pathfinder node.
    /// </summary>
    [Author("Franco, Gustavo")]
    [Flags]
    public enum PathfinderNodeTypes {
        /// <summary>
        /// Start of path node.
        /// </summary>
        Start   = 1,
        
        /// <summary>
        /// End of path node.
        /// </summary>
        End     = 2,
        
        /// <summary>
        /// Open node.
        /// </summary>
        Open    = 4,
        
        /// <summary>
        /// Closed node.
        /// </summary>
        Close   = 8,
        
        /// <summary>
        /// Current node.
        /// </summary>
        Current = 16,
        
        /// <summary>
        /// Node is part of the path.
        /// </summary>
        Path    = 32
    }
}
